﻿<?php
/*
#1. preg_match
# w jej przypadku trzeba na poczatku i koncu wyrazenia dac / 
# wyrazenie to \d{5} 

$validations='/\d{5}/';
$params ="166667" ;
if( preg_match($validations, $params)) echo "bangla"; // funkcja preg_match zwraca tru/false normalnie


#1.b lepsza wersja zwracajaca element znaleziony PIERWSZY
$subject = "abcdefdgfdgfdefff";
$pattern = '/def./';
preg_match($pattern, $subject, $matches, PREG_OFFSET_CAPTURE);
print_r($matches);
//Array ( [0] => Array ( [0] => def [1] => 3 ) ) 

//Array ( [0] => def )  bez ostatniego parametru


# preg_match_all zwracanie tablicy znalezionych rzeczy
$subject = "abcdefdgfdgfdefff";
$pattern = '/def./';
$wyn=preg_match_all($pattern, $subject, $matches);
echo "<br>preg_match_all<br>";
print_r($wyn); // liczba wyników
print_r($matches);


*/


#  Problem z zachlannoscia teoretycznie to zapytanie jest zachłanne więc powinno zwrócić jeden durzy wynik a tak nie jest.
$subject = "
-- I want to match the words that start
-- with 'th' and end with 's'.
this line matches just right
this # thus # thistle
";
$pattern = '/th.*s/';
$wyn=preg_match_all($pattern, $subject, $matches);
echo "<br>preg_match_all<br>ciag:{$subject} <br><br> regex: <strong>/th.*s/</strong><br>Zachłannosc";
print_r($wyn); // liczba wyników
print_r($matches);

?>
